package com.ntd.study.base.type.date;

import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;

/**
 * 时间类型学习
 *
 * @author liuwenju
 * @date 2021/4/8
 */
public class StudyDate {

    public static void main(String[] args) {
        localDateTime();
    }

    /**
     * 时间类型转换 yyyy YYYY 之间的坑
     * YYYY是基于周来计算年的，它指向当天所在周属于的年份，一周从周日开始算起，周六结束，只要本周跨年，那么这一周就算下一年的了。正确姿势是使用yyyy格式
     */
    private static void extracted() {
        Calendar calendar = Calendar.getInstance();
        calendar.set(2019, Calendar.DECEMBER, 31);
        Date testDate = calendar.getTime();
        SimpleDateFormat dtf = new SimpleDateFormat("YYYY-MM-dd");
        System.out.println("2019-12-31 转 YYYY-MM-dd 格式后 " + dtf.format(testDate));
    }

    private static void localDateTime() {
        String str = "2021-07-08 12:12:12.1";
        LocalDateTime localDateTime = LocalDateTime.parse(str, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.ms"));
        System.out.println(localDateTime);
    }
}
